package com.example.lotterysystem.service.dto;

import com.example.lotterysystem.service.enums.*;
import lombok.Data;

import java.math.BigDecimal;
import java.util.List;

@Data
public class ActivityDetailDTO {

    /**
     *  活动信息
     */
    // 活动id
    private Long activityId;

    // 活动名称
    private String activityName;

    // 活动描述
    private String description;

    public Boolean valid() {
        return status.equals(ActivityStatusEnum.RUNNING);
    }

    //活动状态
    private ActivityStatusEnum status;

    /**
     *  奖品信息（列表）
     */
    private List<prizeDTO> prizeDTOList;

    /**
     * 人员信息（列表）
     */
    private List<userDTO> userDTOList;


    // ——————————————————————————————————————————————————————

    // 因为之前写的那个prizeDTO里面信息不足，没有奖品数量等信息
    @Data
    public static class prizeDTO {

        //奖品id
        private Long prizeId;

        //奖品名称
        private String name;

        //奖品图片
        private String imageUrl;

        //奖品价格
        private BigDecimal price;

        //描述
        private String description;

        //奖品数量
        private Long prizeAmount;

        //奖品等级
        private ActivityPrizeTiersEnum tiers;

        //奖品状态
        private ActivityPrizeStatusEnum status;

        public Boolean valid() {
            return status.equals(ActivityPrizeStatusEnum.INIT);
        }
    }

    // 因为之前写的那个userDTO里面信息和当前要求不符合
    @Data
    public static class userDTO {

        private Long userId;

        private String userName;

        private ActivityUserStatusEnum status;

        public Boolean valid() {
            return status.equals(ActivityUserStatusEnum.INIT);
        }
    }

}
